home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 001-025 / disk_005 / mandelbrotsrc / mand6.c < prev    next >
C/C++ Source or Header  |  1992-05-06  |  20KB  |  999 lines

  1.  
  2. /*****************************************************************************
  3.  *                  MAND6.C - Color Window Data
  4.  *             Mandelbrot Self-Squared Dragon Generator
  5.  *                    For the Commodore Amiga
  6.  *                         Version 2.01
  7.  *
  8.  *             Copyright (C) 1986, =Robert J. Mical=
  9.  *                  Placed in the Public Domain
  10.  *
  11.  *  This program may be distributed free of charge as long as the above
  12.  *  notice is retained.  You may extract any or all information contained
  13.  *  in this file for use in your own programs
  14.  *
  15.  ****************************************************************************/
  16.  
  17. #include "mand.h"
  18.  
  19.  
  20. /* === The Mandelbrot program definitions ================================= */
  21.  
  22. extern int MathBase, MathTransBase;
  23.  
  24. extern struct   GfxBase       *GfxBase;
  25. extern struct   IntuitionBase *IntuitionBase;
  26.  
  27. extern struct   RastPort      *rp,*rp2;
  28. extern struct   ViewPort      *vp;
  29.  
  30. extern struct   Window        *w,*w2, *ColorWindow;
  31. extern struct   Screen        *screen;
  32. extern struct   IntuiMessage  *message;
  33.  
  34. extern long last_color;
  35.  
  36. extern BOOL SettingCenter, SettingBoxSize;
  37.  
  38. extern union kludge {
  39.    float f;
  40.    int i;
  41. } start_r,end_r,start_i,end_i;  /* Block bounds for set */
  42. extern int max_x,max_y,max_mem_y;  /* Graphics window size */
  43. extern int max_count,color_inc,color_offset,color_set,color_mode,color_div;
  44. extern int color_inset,func_num;
  45.  
  46. extern int v_starty,max_mem;
  47. extern long v_offset;
  48. extern UWORD *color_table,*v_mand_store;
  49.  
  50. extern int modified,want_read;
  51.  
  52. extern FILE *console,*v_fp,*redir_fp;
  53.  
  54. extern SHORT ZoomCenterX, ZoomCenterY, ZoomBoxSizeX, ZoomBoxSizeY;
  55. extern SHORT ZoomBoxStartX, ZoomBoxStartY;
  56.  
  57.  
  58. /*****************************************************************************
  59.  *
  60.  * Color window template initialization and routines, 
  61.  * for colorwindow and cyclewindow
  62.  *
  63.  * Throughout this file, the COLOR_RED and COLOR_GREEN gadgets are in the
  64.  * opposite order you would expect.  
  65.  *
  66.  ****************************************************************************/
  67.  
  68. struct TextAttr SafeFont =
  69.     {
  70.     "topaz.font",
  71.     TOPAZ_EIGHTY,
  72.     0,
  73.     0,
  74.     };
  75.  
  76.  
  77. USHORT RGBData[] =
  78.     {
  79.     0xFC00,
  80.     0x6600,
  81.     0x6600,
  82.     0x7C00,
  83.     0x6C00,
  84.     0x6600,
  85.     0xE300,
  86.     0x0000,
  87.     0x0000,
  88.     0x0000,
  89.     0x0000,
  90.     0x3C00,
  91.     0x6600,
  92.     0xC000,
  93.     0xCE00,
  94.     0xC600,
  95.     0x6600,
  96.     0x3E00,
  97.     0x0000,
  98.     0x0000,
  99.     0x0000,
  100.     0x0000,
  101.     0xFC00,
  102.     0x6600,
  103.     0x6600,
  104.     0x7C00,
  105.     0x6600,
  106.     0x6600,
  107.     0xFC00,
  108.     };
  109.  
  110.  
  111. struct Image ColorRGBImage =
  112.     {
  113.     3, 1,
  114.     8, 
  115.     29,
  116.     1,
  117.     &RGBData[0],
  118.     0x1, 0x0,
  119.     NULL,
  120.     };
  121.  
  122.  
  123. SHORT ClusterBorderVectors[] =
  124.     {
  125.     -1, -1,
  126.     -1, COLOR_CLUSTER_HEIGHT,
  127.     COLOR_CLUSTER_WIDTH, COLOR_CLUSTER_HEIGHT,
  128.     COLOR_CLUSTER_WIDTH, -1,
  129.     -1, -1,
  130.     };
  131.  
  132.  
  133. struct Border ColorClusterBorder =
  134.     {
  135.     0, 0, 
  136.     1, 0,
  137.     JAM1,
  138.     5,
  139.     &ClusterBorderVectors[0],
  140.     NULL,
  141.     };
  142.  
  143. struct IntuiText ColorClusterText[4] =
  144.     {
  145.     /* "COPY" */
  146.         {
  147.         1, 0,
  148.         JAM2,
  149.         2 + CHARACTER_WIDTH, 1, 
  150.         &SafeFont,
  151.         "COPY",
  152.         NULL,
  153.         },
  154.  
  155.     /* "RANGE" */
  156.         {
  157.         1, 0, 
  158.         JAM2,
  159.         2 + (CHARACTER_WIDTH >> 1), 1, 
  160.         &SafeFont,
  161.         "RANGE",
  162.         NULL,
  163.         },
  164.  
  165.     /* "OK" */
  166.         {
  167.         1, 0, 
  168.         JAM2,
  169.         2 + (CHARACTER_WIDTH << 1), 1, 
  170.         &SafeFont,
  171.         "OK",
  172.         NULL,
  173.         },
  174.  
  175.     /* "CANCEL" */
  176.         {
  177.         1, 0, 
  178.         JAM2,
  179.         2, 1, 
  180.         &SafeFont,
  181.         "CANCEL",
  182.         NULL,
  183.         },
  184.  
  185.     };
  186.  
  187.  
  188.  
  189.  
  190. /* ======================================================================== */
  191. /* ======================================================================== */
  192. /* ======================================================================== */
  193.  
  194. /* RJM anchor */
  195. struct Image ColorPropsImages[3];
  196. struct Image SuperColorImages[32];
  197.  
  198.  
  199. struct PropInfo ColorPropsInfos[3] = 
  200.     {
  201.         {
  202.         /* COLOR_GREEN */
  203.         AUTOKNOB | FREEHORIZ,
  204.         0,
  205.         0,
  206.         COLOR_KNOB_BODY,
  207.         0,
  208.         0, 0, 0, 0, 0, 0,
  209.         },
  210.  
  211.         {
  212.         /* COLOR_RED */
  213.         AUTOKNOB | FREEHORIZ,
  214.         0,
  215.         0,
  216.         COLOR_KNOB_BODY,
  217.         0,
  218.         0, 0, 0, 0, 0, 0,
  219.         },
  220.  
  221.         {
  222.         /* COLOR_BLUE */
  223.         AUTOKNOB | FREEHORIZ,
  224.         0,
  225.         0,
  226.         COLOR_KNOB_BODY,
  227.         0,
  228.         0, 0, 0, 0, 0, 0,
  229.         },
  230.  
  231.     };
  232.  
  233.  
  234. struct Gadget ColorTemplateGadgets[COLOR_GADGETS_COUNT] =
  235.     {
  236.         {
  237.         /* COLOR_00 */
  238.         NULL,
  239.         COLOR_BOX_LEFT + ((00 & 0x7) * 15),
  240.         COLOR_COLOR_TOP + ((00 >> 3) * 10),
  241.         15,
  242.         10,
  243.         GADGIMAGE,
  244.         GADGIMMEDIATE,
  245.         BOOLGADGET,
  246.         (APTR)&SuperColorImages[00],
  247.         NULL,
  248.         NULL,
  249.         NULL,
  250.         NULL,
  251.         00,
  252.         NULL,
  253.         },
  254.  
  255.         {
  256.         /* COLOR_01 */
  257.         &ColorTemplateGadgets[00],
  258.         COLOR_BOX_LEFT + ((01 & 0x7) * 15),
  259.         COLOR_COLOR_TOP + ((01 >> 3) * 10),
  260.         15,
  261.         10,
  262.         GADGIMAGE,
  263.         GADGIMMEDIATE,
  264.         BOOLGADGET,
  265.         (APTR)&SuperColorImages[01],
  266.         NULL,
  267.         NULL,
  268.         NULL,
  269.         NULL,
  270.         01,
  271.         NULL,
  272.         },
  273.  
  274.         {
  275.         /* COLOR_02 */
  276.         &ColorTemplateGadgets[01],
  277.         COLOR_BOX_LEFT + ((02 & 0x7) * 15),
  278.         COLOR_COLOR_TOP + ((02 >> 3) * 10),
  279.         15,
  280.         10,
  281.         GADGIMAGE,
  282.         GADGIMMEDIATE,
  283.         BOOLGADGET,
  284.         (APTR)&SuperColorImages[02],
  285.         NULL,
  286.         NULL,
  287.         NULL,
  288.         NULL,
  289.         02,
  290.         NULL,
  291.         },
  292.  
  293.         {
  294.         /* COLOR_03 */
  295.         &ColorTemplateGadgets[02],
  296.         COLOR_BOX_LEFT + ((03 & 0x7) * 15),
  297.         COLOR_COLOR_TOP + ((03 >> 3) * 10),
  298.         15,
  299.         10,
  300.         GADGIMAGE,
  301.         GADGIMMEDIATE,
  302.         BOOLGADGET,
  303.         (APTR)&SuperColorImages[03],
  304.         NULL,
  305.         NULL,
  306.         NULL,
  307.         NULL,
  308.         03,
  309.         NULL,
  310.         },
  311.  
  312.         {
  313.         /* COLOR_04 */
  314.         &ColorTemplateGadgets[03],
  315.         COLOR_BOX_LEFT + ((04 & 0x7) * 15),
  316.         COLOR_COLOR_TOP + ((04 >> 3) * 10),
  317.         15,
  318.         10,
  319.         GADGIMAGE,
  320.         GADGIMMEDIATE,
  321.         BOOLGADGET,
  322.         (APTR)&SuperColorImages[04],
  323.         NULL,
  324.         NULL,
  325.         NULL,
  326.         NULL,
  327.         04,
  328.         NULL,
  329.         },
  330.  
  331.         {
  332.         /* COLOR_05 */
  333.         &ColorTemplateGadgets[04],
  334.         COLOR_BOX_LEFT + ((05 & 0x7) * 15),
  335.         COLOR_COLOR_TOP + ((05 >> 3) * 10),
  336.         15,
  337.         10,
  338.         GADGIMAGE,
  339.         GADGIMMEDIATE,
  340.         BOOLGADGET,
  341.         (APTR)&SuperColorImages[05],
  342.         NULL,
  343.         NULL,
  344.         NULL,
  345.         NULL,
  346.         05,
  347.         NULL,
  348.         },
  349.  
  350.         {
  351.         /* COLOR_06 */
  352.         &ColorTemplateGadgets[05],
  353.         COLOR_BOX_LEFT + ((06 & 0x7) * 15),
  354.         COLOR_COLOR_TOP + ((06 >> 3) * 10),
  355.         15,
  356.         10,
  357.         GADGIMAGE,
  358.         GADGIMMEDIATE,
  359.         BOOLGADGET,
  360.         (APTR)&SuperColorImages[06],
  361.         NULL,
  362.         NULL,
  363.         NULL,
  364.         NULL,
  365.         06,
  366.         NULL,
  367.         },
  368.  
  369.         {
  370.         /* COLOR_07 */
  371.         &ColorTemplateGadgets[06],
  372.         COLOR_BOX_LEFT + ((07 & 0x7) * 15),
  373.         COLOR_COLOR_TOP + ((07 >> 3) * 10),
  374.         15,
  375.         10,
  376.         GADGIMAGE,
  377.         GADGIMMEDIATE,
  378.         BOOLGADGET,
  379.         (APTR)&SuperColorImages[07],
  380.         NULL,
  381.         NULL,
  382.         NULL,
  383.         NULL,
  384.         07,
  385.         NULL,
  386.         },
  387.  
  388.         {
  389.         /* COLOR_08 */
  390.         &ColorTemplateGadgets[07],
  391.         COLOR_BOX_LEFT + ((08 & 0x7) * 15),
  392.         COLOR_COLOR_TOP + ((08 >> 3) * 10),
  393.         15,
  394.         10,
  395.         GADGIMAGE,
  396.         GADGIMMEDIATE,
  397.         BOOLGADGET,
  398.         (APTR)&SuperColorImages[08],
  399.         NULL,
  400.         NULL,
  401.         NULL,
  402.         NULL,
  403.         08,
  404.         NULL,
  405.         },
  406.  
  407.         {
  408.         /* COLOR_09 */
  409.         &ColorTemplateGadgets[08],
  410.         COLOR_BOX_LEFT + ((09 & 0x7) * 15),
  411.         COLOR_COLOR_TOP + ((09 >> 3) * 10),
  412.         15,
  413.         10,
  414.         GADGIMAGE,
  415.         GADGIMMEDIATE,
  416.         BOOLGADGET,
  417.         (APTR)&SuperColorImages[09],
  418.         NULL,
  419.         NULL,
  420.         NULL,
  421.         NULL,
  422.         09,
  423.         NULL,
  424.         },
  425.  
  426.         {
  427.         /* COLOR_10 */
  428.         &ColorTemplateGadgets[09],
  429.         COLOR_BOX_LEFT + ((10 & 0x7) * 15),
  430.         COLOR_COLOR_TOP + ((10 >> 3) * 10),
  431.         15,
  432.         10,
  433.         GADGIMAGE,
  434.         GADGIMMEDIATE,
  435.         BOOLGADGET,
  436.         (APTR)&SuperColorImages[10],
  437.         NULL,
  438.         NULL,
  439.         NULL,
  440.         NULL,
  441.         10,
  442.         NULL,
  443.         },
  444.  
  445.         {
  446.         /* COLOR_11 */
  447.         &ColorTemplateGadgets[10],
  448.         COLOR_BOX_LEFT + ((11 & 0x7) * 15),
  449.         COLOR_COLOR_TOP + ((11 >> 3) * 10),
  450.         15,
  451.         10,
  452.         GADGIMAGE,
  453.         GADGIMMEDIATE,
  454.         BOOLGADGET,
  455.         (APTR)&SuperColorImages[11],
  456.         NULL,
  457.         NULL,
  458.         NULL,
  459.         NULL,
  460.         11,
  461.         NULL,
  462.         },
  463.  
  464.         {
  465.         /* COLOR_12 */
  466.         &ColorTemplateGadgets[11],
  467.         COLOR_BOX_LEFT + ((12 & 0x7) * 15),
  468.         COLOR_COLOR_TOP + ((12 >> 3) * 10),
  469.         15,
  470.         10,
  471.         GADGIMAGE,
  472.         GADGIMMEDIATE,
  473.         BOOLGADGET,
  474.         (APTR)&SuperColorImages[12],
  475.         NULL,
  476.         NULL,
  477.         NULL,
  478.         NULL,
  479.         12,
  480.         NULL,
  481.         },
  482.  
  483.         {
  484.         /* COLOR_13 */
  485.         &ColorTemplateGadgets[12],
  486.         COLOR_BOX_LEFT + ((13 & 0x7) * 15),
  487.         COLOR_COLOR_TOP + ((13 >> 3) * 10),
  488.         15,
  489.         10,
  490.         GADGIMAGE,
  491.         GADGIMMEDIATE,
  492.         BOOLGADGET,
  493.         (APTR)&SuperColorImages[13],
  494.         NULL,
  495.         NULL,
  496.         NULL,
  497.         NULL,
  498.         13,
  499.         NULL,
  500.         },
  501.  
  502.         {
  503.         /* COLOR_14 */
  504.         &ColorTemplateGadgets[13],
  505.         COLOR_BOX_LEFT + ((14 & 0x7) * 15),
  506.         COLOR_COLOR_TOP + ((14 >> 3) * 10),
  507.         15,
  508.         10,
  509.         GADGIMAGE,
  510.         GADGIMMEDIATE,
  511.         BOOLGADGET,
  512.         (APTR)&SuperColorImages[14],
  513.         NULL,
  514.         NULL,
  515.         NULL,
  516.         NULL,
  517.         14,
  518.         NULL,
  519.         },
  520.  
  521.         {
  522.         /* COLOR_15 */
  523.         &ColorTemplateGadgets[14],
  524.         COLOR_BOX_LEFT + ((15 & 0x7) * 15),
  525.         COLOR_COLOR_TOP + ((15 >> 3) * 10),
  526.         15,
  527.         10,
  528.         GADGIMAGE,
  529.         GADGIMMEDIATE,
  530.         BOOLGADGET,
  531.         (APTR)&SuperColorImages[15],
  532.         NULL,
  533.         NULL,
  534.         NULL,
  535.         NULL,
  536.         15,
  537.         NULL,
  538.         },
  539.  
  540.         {
  541.         /* COLOR_16 */
  542.         &ColorTemplateGadgets[15],
  543.         COLOR_BOX_LEFT + ((16 & 0x7) * 15),
  544.         COLOR_COLOR_TOP + ((16 >> 3) * 10),
  545.         15,
  546.         10,
  547.         GADGIMAGE,
  548.         GADGIMMEDIATE,
  549.         BOOLGADGET,
  550.         (APTR)&SuperColorImages[16],
  551.         NULL,
  552.         NULL,
  553.         NULL,
  554.         NULL,
  555.         16,
  556.         NULL,
  557.         },
  558.  
  559.         {
  560.         /* COLOR_17 */
  561.         &ColorTemplateGadgets[16],
  562.         COLOR_BOX_LEFT + ((17 & 0x7) * 15),
  563.         COLOR_COLOR_TOP + ((17 >> 3) * 10),
  564.         15,
  565.         10,
  566.         GADGIMAGE,
  567.         GADGIMMEDIATE,
  568.         BOOLGADGET,
  569.         (APTR)&SuperColorImages[17],
  570.         NULL,
  571.         NULL,
  572.         NULL,
  573.         NULL,
  574.         17,
  575.         NULL,
  576.         },
  577.  
  578.         {
  579.         /* COLOR_18 */
  580.         &ColorTemplateGadgets[17],
  581.         COLOR_BOX_LEFT + ((18 & 0x7) * 15),
  582.         COLOR_COLOR_TOP + ((18 >> 3) * 10),
  583.         15,
  584.         10,
  585.         GADGIMAGE,
  586.         GADGIMMEDIATE,
  587.         BOOLGADGET,
  588.         (APTR)&SuperColorImages[18],
  589.         NULL,
  590.         NULL,
  591.         NULL,
  592.         NULL,
  593.         18,
  594.         NULL,
  595.         },
  596.  
  597.         {
  598.         /* COLOR_19 */
  599.         &ColorTemplateGadgets[18],
  600.         COLOR_BOX_LEFT + ((19 & 0x7) * 15),
  601.         COLOR_COLOR_TOP + ((19 >> 3) * 10),
  602.         15,
  603.         10,
  604.         GADGIMAGE,
  605.         GADGIMMEDIATE,
  606.         BOOLGADGET,
  607.         (APTR)&SuperColorImages[19],
  608.         NULL,
  609.         NULL,
  610.         NULL,
  611.         NULL,
  612.         19,
  613.         NULL,
  614.         },
  615.  
  616.         {
  617.         /* COLOR_20 */
  618.         &ColorTemplateGadgets[19],
  619.         COLOR_BOX_LEFT + ((20 & 0x7) * 15),
  620.         COLOR_COLOR_TOP + ((20 >> 3) * 10),
  621.         15,
  622.         10,
  623.         GADGIMAGE,
  624.         GADGIMMEDIATE,
  625.         BOOLGADGET,
  626.         (APTR)&SuperColorImages[20],
  627.         NULL,
  628.         NULL,
  629.         NULL,
  630.         NULL,
  631.         20,
  632.         NULL,
  633.         },
  634.  
  635.         {
  636.         /* COLOR_21 */
  637.         &ColorTemplateGadgets[20],
  638.         COLOR_BOX_LEFT + ((21 & 0x7) * 15),
  639.         COLOR_COLOR_TOP + ((21 >> 3) * 10),
  640.         15,
  641.         10,
  642.         GADGIMAGE,
  643.         GADGIMMEDIATE,
  644.         BOOLGADGET,
  645.         (APTR)&SuperColorImages[21],
  646.         NULL,
  647.         NULL,
  648.         NULL,
  649.         NULL,
  650.         21,
  651.         NULL,
  652.         },
  653.  
  654.         {
  655.         /* COLOR_22 */
  656.         &ColorTemplateGadgets[21],
  657.         COLOR_BOX_LEFT + ((22 & 0x7) * 15),
  658.         COLOR_COLOR_TOP + ((22 >> 3) * 10),
  659.         15,
  660.         10,
  661.         GADGIMAGE,
  662.         GADGIMMEDIATE,
  663.         BOOLGADGET,
  664.         (APTR)&SuperColorImages[22],
  665.         NULL,
  666.         NULL,
  667.         NULL,
  668.         NULL,
  669.         22,
  670.         NULL,
  671.         },
  672.  
  673.         {
  674.         /* COLOR_23 */
  675.         &ColorTemplateGadgets[22],
  676.         COLOR_BOX_LEFT + ((23 & 0x7) * 15),
  677.         COLOR_COLOR_TOP + ((23 >> 3) * 10),
  678.         15,
  679.         10,
  680.         GADGIMAGE,
  681.         GADGIMMEDIATE,
  682.         BOOLGADGET,
  683.         (APTR)&SuperColorImages[23],
  684.         NULL,
  685.         NULL,
  686.         NULL,
  687.         NULL,
  688.         23,
  689.         NULL,
  690.         },
  691.  
  692.         {
  693.         /* COLOR_24 */
  694.         &ColorTemplateGadgets[23],
  695.         COLOR_BOX_LEFT + ((24 & 0x7) * 15),
  696.         COLOR_COLOR_TOP + ((24 >> 3) * 10),
  697.         15,
  698.         10,
  699.         GADGIMAGE,
  700.         GADGIMMEDIATE,
  701.         BOOLGADGET,
  702.         (APTR)&SuperColorImages[24],
  703.         NULL,
  704.         NULL,
  705.         NULL,
  706.         NULL,
  707.         24,
  708.         NULL,
  709.         },
  710.  
  711.         {
  712.         /* COLOR_25 */
  713.         &ColorTemplateGadgets[24],
  714.         COLOR_BOX_LEFT + ((25 & 0x7) * 15),
  715.         COLOR_COLOR_TOP + ((25 >> 3) * 10),
  716.         15,
  717.         10,
  718.         GADGIMAGE,
  719.         GADGIMMEDIATE,
  720.         BOOLGADGET,
  721.         (APTR)&SuperColorImages[25],
  722.         NULL,
  723.         NULL,
  724.         NULL,
  725.         NULL,
  726.         25,
  727.         NULL,
  728.         },
  729.  
  730.         {
  731.         /* COLOR_26 */
  732.         &ColorTemplateGadgets[25],
  733.         COLOR_BOX_LEFT + ((26 & 0x7) * 15),
  734.         COLOR_COLOR_TOP + ((26 >> 3) * 10),
  735.         15,
  736.         10,
  737.         GADGIMAGE,
  738.         GADGIMMEDIATE,
  739.         BOOLGADGET,
  740.         (APTR)&SuperColorImages[26],
  741.         NULL,
  742.         NULL,
  743.         NULL,
  744.         NULL,
  745.         26,
  746.         NULL,
  747.         },
  748.  
  749.         {
  750.         /* COLOR_27 */
  751.         &ColorTemplateGadgets[26],
  752.         COLOR_BOX_LEFT + ((27 & 0x7) * 15),
  753.         COLOR_COLOR_TOP + ((27 >> 3) * 10),
  754.         15,
  755.         10,
  756.         GADGIMAGE,
  757.         GADGIMMEDIATE,
  758.         BOOLGADGET,
  759.         (APTR)&SuperColorImages[27],
  760.         NULL,
  761.         NULL,
  762.         NULL,
  763.         NULL,
  764.         27,
  765.         NULL,
  766.         },
  767.  
  768.         {
  769.         /* COLOR_28 */
  770.         &ColorTemplateGadgets[27],
  771.         COLOR_BOX_LEFT + ((28 & 0x7) * 15),
  772.         COLOR_COLOR_TOP + ((28 >> 3) * 10),
  773.         15,
  774.         10,
  775.         GADGIMAGE,
  776.         GADGIMMEDIATE,
  777.         BOOLGADGET,
  778.         (APTR)&SuperColorImages[28],
  779.         NULL,
  780.         NULL,
  781.         NULL,
  782.         NULL,
  783.         28,
  784.         NULL,
  785.         },
  786.  
  787.         {
  788.         /* COLOR_29 */
  789.         &ColorTemplateGadgets[28],
  790.         COLOR_BOX_LEFT + ((29 & 0x7) * 15),
  791.         COLOR_COLOR_TOP + ((29 >> 3) * 10),
  792.         15,
  793.         10,
  794.         GADGIMAGE,
  795.         GADGIMMEDIATE,
  796.         BOOLGADGET,
  797.         (APTR)&SuperColorImages[29],
  798.         NULL,
  799.         NULL,
  800.         NULL,
  801.         NULL,
  802.         29,
  803.         NULL,
  804.         },
  805.  
  806.         {
  807.         /* COLOR_30 */
  808.         &ColorTemplateGadgets[29],
  809.         COLOR_BOX_LEFT + ((30 & 0x7) * 15),
  810.         COLOR_COLOR_TOP + ((30 >> 3) * 10),
  811.         15,
  812.         10,
  813.         GADGIMAGE,
  814.         GADGIMMEDIATE,
  815.         BOOLGADGET,
  816.         (APTR)&SuperColorImages[30],
  817.         NULL,
  818.         NULL,
  819.         NULL,
  820.         NULL,
  821.         30,
  822.         NULL,
  823.         },
  824.  
  825.         {
  826.         /* COLOR_31 */
  827.         &ColorTemplateGadgets[30],
  828.         COLOR_BOX_LEFT + ((31 & 0x7) * 15),
  829.         COLOR_COLOR_TOP + ((31 >> 3) * 10),
  830.         15,
  831.         10,
  832.         GADGIMAGE,
  833.         GADGIMMEDIATE,
  834.         BOOLGADGET,
  835.         (APTR)&SuperColorImages[31],
  836.         NULL,
  837.         NULL,
  838.         NULL,
  839.         NULL,
  840.         31,
  841.         NULL,
  842.         },
  843.  
  844.         {
  845.         /* COLOR_COPY */
  846.         &ColorTemplateGadgets[31],
  847.         COLOR_CLUSTER_LEFT,
  848.         COLOR_CLUSTER_TOP + (00 * (COLOR_CLUSTER_HEIGHT + 3)),
  849.         COLOR_CLUSTER_WIDTH,
  850.         COLOR_CLUSTER_HEIGHT,
  851.         GADGHCOMP,
  852.         RELVERIFY,
  853.         BOOLGADGET,
  854.         (APTR)&ColorClusterBorder,
  855.         NULL,
  856.         &ColorClusterText[00],
  857.         NULL,
  858.         NULL,
  859.         COLOR_COPY,
  860.         NULL,
  861.         },
  862.  
  863.         {
  864.         /* COLOR_RANGE */
  865.         &ColorTemplateGadgets[COLOR_COPY],
  866.         COLOR_CLUSTER_LEFT,
  867.         COLOR_CLUSTER_TOP + (01 * (COLOR_CLUSTER_HEIGHT + 3)),
  868.         COLOR_CLUSTER_WIDTH,
  869.         COLOR_CLUSTER_HEIGHT,
  870.         GADGHCOMP,
  871.         RELVERIFY,
  872.         BOOLGADGET,
  873.         (APTR)&ColorClusterBorder,
  874.         NULL,
  875.         &ColorClusterText[01],
  876.         NULL,
  877.         NULL,
  878.         COLOR_RANGE,
  879.         NULL,
  880.         },
  881.  
  882.         {
  883.         /* COLOR_OK */
  884.         &ColorTemplateGadgets[COLOR_RANGE],
  885.         COLOR_CLUSTER_LEFT,
  886.         COLOR_CLUSTER_TOP + (02 * (COLOR_CLUSTER_HEIGHT + 3)),
  887.         COLOR_CLUSTER_WIDTH,
  888.         COLOR_CLUSTER_HEIGHT,
  889.         GADGHCOMP,
  890.         RELVERIFY,
  891.         BOOLGADGET,
  892.         (APTR)&ColorClusterBorder,
  893.         NULL,
  894.         &ColorClusterText[02],
  895.         NULL,
  896.         NULL,
  897.         COLOR_OK,
  898.         NULL,
  899.         },
  900.  
  901.         {
  902.         /* COLOR_CANCEL */
  903.         &ColorTemplateGadgets[COLOR_OK],
  904.         COLOR_CLUSTER_LEFT,
  905.         COLOR_CLUSTER_TOP + (03 * (COLOR_CLUSTER_HEIGHT + 3)),
  906.         COLOR_CLUSTER_WIDTH,
  907.         COLOR_CLUSTER_HEIGHT,
  908.         GADGHCOMP,
  909.         RELVERIFY,
  910.         BOOLGADGET,
  911.         (APTR)&ColorClusterBorder,
  912.         NULL,
  913.         &ColorClusterText[03],
  914.         NULL,
  915.         NULL,
  916.         COLOR_CANCEL,
  917.         NULL,
  918.         },
  919.  
  920.         {
  921.         /* COLOR_GREEN */
  922.         &ColorTemplateGadgets[COLOR_CANCEL],
  923.         COLOR_PROP_LEFT,
  924.         COLOR_PROP_TOP + (01 * (COLOR_PROP_HEIGHT + 1)),
  925.         COLOR_PROP_WIDTH,
  926.         COLOR_PROP_HEIGHT,
  927.         GADGHCOMP | GADGIMAGE,
  928.         FOLLOWMOUSE,
  929.         PROPGADGET,
  930.         (APTR)&ColorPropsImages[01],
  931.         NULL,
  932.         NULL,
  933.         NULL,
  934.         (APTR)&ColorPropsInfos[01],
  935.         COLOR_GREEN,
  936.         NULL,
  937.         },
  938.  
  939.         {
  940.         /* COLOR_RED */
  941.         &ColorTemplateGadgets[COLOR_GREEN],
  942.         COLOR_PROP_LEFT,
  943.         COLOR_PROP_TOP + (00 * (COLOR_PROP_HEIGHT + 1)),
  944.         COLOR_PROP_WIDTH,
  945.         COLOR_PROP_HEIGHT,
  946.         GADGHCOMP | GADGIMAGE,
  947.         FOLLOWMOUSE,
  948.         PROPGADGET,
  949.         (APTR)&ColorPropsImages[00],
  950.         NULL,
  951.         NULL,
  952.         NULL,
  953.         (APTR)&ColorPropsInfos[00],
  954.         COLOR_RED,
  955.         NULL,
  956.         },
  957.  
  958.         {
  959.         /* COLOR_BLUE */
  960.         &ColorTemplateGadgets[COLOR_RED],
  961.         COLOR_PROP_LEFT,
  962.         COLOR_PROP_TOP + (02 * (COLOR_PROP_HEIGHT + 1)),
  963.         COLOR_PROP_WIDTH,
  964.         COLOR_PROP_HEIGHT,
  965.         GADGHCOMP | GADGIMAGE,
  966.         FOLLOWMOUSE,
  967.         PROPGADGET,
  968.         (APTR)&ColorPropsImages[02],
  969.         NULL,
  970.         NULL,
  971.         NULL,
  972.         (APTR)&ColorPropsInfos[02],
  973.         COLOR_BLUE,
  974.         NULL,
  975.         },
  976.  
  977.         {
  978.         /* COLOR_HSL_RGB */
  979.         &ColorTemplateGadgets[COLOR_BLUE],
  980.         COLOR_HSL_LEFT,
  981.         COLOR_HSL_TOP,
  982.         CHARACTER_WIDTH + 5,
  983.         COLOR_BOX_BOTTOM - COLOR_BOX_TOP + 1,
  984.         GADGHIMAGE | GADGIMAGE | SELECTED,
  985.         TOGGLESELECT,
  986.         BOOLGADGET,
  987.         (APTR)&ColorRGBImage,
  988.         (APTR)&ColorRGBImage,
  989.         NULL,
  990.         NULL,
  991.         NULL,
  992.         COLOR_HSL_RGB,
  993.         NULL,
  994.         },
  995.     };
  996.  
  997.  
  998.  
  999.